home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 409_01 / makefile.msc < prev    next >
Makefile  |  1993-10-21  |  3KB  |  91 lines

  1. #############################################################################
  2. #
  3. #                   Copyright (C) 1993 SciTech Software
  4. #                           All rights reserved.
  5. #
  6. # Descripton:   Makefile for the SuperVGA test library.
  7. #               MSDOS version for Microsoft C 6.0
  8. #
  9. # $Id: makefile.msc 1.2 1993/10/22 09:00:24 kjb Exp $
  10. #
  11. #############################################################################
  12.  
  13. CC              = cl                # Name of C compiler
  14. ASM             = tasm              # Name of assembler
  15. LINK            = link              # Name of linker
  16. LIB             = lib               # Name of librarian
  17. LIB_FLAGS       = /NOI
  18.  
  19. !IFDEF debug
  20. CC_DOPT         = /Zi               # Turn on debugging for C compiler
  21. DEBUG           = -Ddebug
  22. !ENDIF
  23.  
  24. # We must assemble the test programs in the large memory model
  25.  
  26. MODEL           = /AL
  27. ASM_MODEL       = /d__LARGE__
  28.  
  29. ASM_FLAGS       = /MX /m $(ASM_MODEL)
  30. CC_FLAGS        = /D__MSDOS__ $(MODEL) $(CC_DOPT) /Ox /Oz
  31.  
  32. # Implicit rules to make the object files for the test code
  33.  
  34. .SUFFIXES: .c .obj .lib .exe
  35.  
  36. .c.obj:
  37.     $(CC) $(CC_FLAGS) /c $<
  38.  
  39. .asm.obj:
  40.     $(ASM) $(ASM_FLAGS) $<, $*.obj
  41.  
  42. # Object files required to build the libraries
  43.  
  44. OBJECTS         = svgac.obj svga.obj
  45.  
  46. all: test16.exe test256.exe test32k.exe test64k.exe test16m.exe
  47.  
  48. test16.exe: test16.obj svga_msc.lib cpu.obj
  49.     $(CC) $(CC_FLAGS) test16.obj svga_msc.lib cpu.obj
  50.  
  51. test256.exe: test256.obj svga_msc.lib cpu.obj
  52.     $(CC) $(CC_FLAGS) test256.obj svga_msc.lib cpu.obj
  53.  
  54. test32k.exe: test32k.obj svga_msc.lib cpu.obj
  55.     $(CC) $(CC_FLAGS) test32k.obj svga_msc.lib cpu.obj
  56.  
  57. test64k.exe: test64k.obj svga_msc.lib cpu.obj
  58.     $(CC) $(CC_FLAGS) test64k.obj svga_msc.lib cpu.obj
  59.  
  60. test16m.exe: test16m.obj svga_msc.lib cpu.obj
  61.     $(CC) $(CC_FLAGS) test16m.obj svga_msc.lib cpu.obj
  62.  
  63. # Target to make each of the library file
  64.  
  65. svga_msc.lib: $(OBJECTS)
  66.     echo svga_msc.lib & > temp.rsp
  67.     echo -+svgac.obj & >> temp.rsp
  68.     echo -+svga.obj & >> temp.rsp
  69.     echo ,,svga_msc.lib >> temp.rsp
  70.     $(LIB) $(LIB_FLAGS) @temp.rsp
  71.     del temp.rsp
  72.  
  73. # Dependencies
  74.  
  75. svgac.obj:      svga.h
  76. test16.obj:     svga.h
  77. test256.obj:    svga.h
  78. test32k.obj:    svga.h
  79. test64k.obj:    svga.h
  80. test16m.obj:    svga.h
  81.  
  82. # Clean up directory removing all files not needed to make the library
  83.  
  84. clean:
  85.     @del *.sym *.bak *.tdk *.map *.dsk
  86.     except (cpu.obj svga.obj) del *.obj
  87.  
  88. realclean:  clean
  89.     @del *.exe svga_msc.lib *.obj
  90.  
  91.